/*
 * OptimizationAlgorithm.h
 *
 *  Created on: Oct 17, 2013
 *      Author: filipe
 */

#ifndef OPTIMIZATIONALGORITHM_H_
#define OPTIMIZATIONALGORITHM_H_

template<class T>
class OptimizationAlgorithm
{
	protected:
		int _dimension;
		T *_data;

	public:
		OptimizationAlgorithm()
		{
			_dimension = 0;
			_data = NULL;
		}

		virtual ~OptimizationAlgorithm() {}

		virtual void Optimize() = 0;
		virtual double* GetCurrentEstimate() = 0;
};

#endif
